﻿using FluentNHibernate.Mapping;

namespace BoneSystem.Business.Entity.ItemComercial.ProdutoMercadoria
{
    class ProdutoMercadoriaMap : SubclassMap<ProdutoMercadoria>
    {
        public ProdutoMercadoriaMap()
        {
            #region Informações gerais.

            Map(x => x.Codigo);
            
            Map(x => x.Descricao).Not.Nullable().Unique();

            References(x => x.Cor).Not.Nullable().Cascade.None();

            HasMany(x => x.Caracteristicas).KeyColumn("produto_id");
            //HasMany(x => x.Imagens).KeyColumn("produto_id");

            #endregion


            #region Dados para transporte

            Map(x => x.PesoBruto).Not.Nullable();
            Map(x => x.PesoLiquido).Not.Nullable();
            Map(x => x.FileImages).CustomType<byte[]>();


            #endregion
            #region Dados de compra

            Map(x => x.CustoAtual);
            Map(x => x.CustoMedio);

            #endregion

            
        }
    }
}
